﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using DTO;
using BUS;

namespace GUI
{
    public partial class Rules : UserControl
    {
        public Rules()
        {
            InitializeComponent();
            ModifyControls();

        }
        private void ModifyControls(){
            btnSave.Enabled = StaticVariables.SuaquidinhEnable;
        }
        private void btnEdit1_Click(object sender, EventArgs e)
        {
            tb1.ReadOnly = !tb1.ReadOnly;
        }

        private void btnEdit2_Click(object sender, EventArgs e)
        {
            tb2.ReadOnly = !tb2.ReadOnly;
        }

        private void btnEdit3_Click(object sender, EventArgs e)
        {
            tb3.ReadOnly = !tb3.ReadOnly;
        }

        private void btnEdit4_Click(object sender, EventArgs e)
        {
            tb4.ReadOnly = !tb4.ReadOnly;
        }

        private void btnEdit5_Click(object sender, EventArgs e)
        {
            tb5.ReadOnly = !tb5.ReadOnly;
        }

        private void btnEdit6_Click(object sender, EventArgs e)
        {
            tb6.ReadOnly = !tb6.ReadOnly;
        }
        private bool CheckEmptyBox(){
            bool result = false;
            if (tb1.Text == String.Empty)
            {
                labelX7.Text = "(*) Giá trị này không được phép rỗng";
                result = true;
            }
            if (tb2.Text == String.Empty)
            {
                labelX8.Text = "(*) Giá trị này không được phép rỗng";
                result = true;
            }
            if (tb3.Text == String.Empty)
            {
                labelX9.Text = "(*) Giá trị này không được phép rỗng";
                result = true;
            }
            if (tb4.Text == String.Empty)
            {
                labelX10.Text = "(*) Giá trị này không được phép rỗng";
                result = true;
            }
            
            if (tb5.Text == String.Empty)
            {
                labelX11.Text = "(*) Giá trị này không được phép rỗng";
                result = true;
            }
            if (tb6.Text == String.Empty)
            {
                labelX12.Text = "(*) Giá trị này không được phép rỗng";
                result = true;
            }
            if (tbTienphat.Text == string.Empty)
            {
                labelX26.Text = "(*) Giá trị này không được phép rỗng";
                result = true;
            }
            return result;
        }
        private void btnSave_Click(object sender, EventArgs e)
        {
            if (CheckEmptyBox())
                return;

            ThamSoDTO thamso = new ThamSoDTO();
            try
            {
                thamso.TuoiToiDa = tb1.ByteValue;
                thamso.TuoiToiThieu = tb2.ByteValue;
                thamso.ThoiHanThe = tb3.IntValue;
                thamso.KhoangCachNamXB = tb4.IntValue;
                thamso.SoLuongMuonToiDa = tb5.IntValue;
                thamso.ThoiGianMuonToiDa = tb6.IntValue;
                thamso.TienPhat = tbTienphat.DecimalValue;

                if (ThamSoBUS.SuaBangThamSo(thamso))
                {
                    //Bao luu thanh cong o day.
                    MessageBox.Show("Luu thanh cong!");
                    tb1.ReadOnly = true;
                    tb2.ReadOnly = true;
                    tb3.ReadOnly = true;
                    tb4.ReadOnly = true;
                    tb5.ReadOnly = true;
                    tb6.ReadOnly = true;
                    tbTienphat.ReadOnly = true;
                    return;
                }
            }
            catch (System.Exception ex)
            {
            }
            // Bao luu khong thanh cong o day.	
            MessageBox.Show("Luu khong thanh cong! Co loi xay ra, vui long kiem tra lai!");
        }

        private void Rules_Load(object sender, EventArgs e)
        {
            // Doc cac gia tri tu bang tham so va truyen vao cac tb
            ThamSoDTO thamso = ThamSoBUS.TimThamSo();
            tb1.Text = thamso.TuoiToiDa.ToString();
            tb2.Text = thamso.TuoiToiThieu.ToString();
            tb3.Text = thamso.ThoiHanThe.ToString();
            tb4.Text = thamso.KhoangCachNamXB.ToString();
            tb5.Text = thamso.SoLuongMuonToiDa.ToString();
            tb6.Text = thamso.ThoiGianMuonToiDa.ToString();
            tbTienphat.Text = thamso.TienPhat.ToString();
        }
        private void buttonX1_Click(object sender, EventArgs e)
        {
            tbTienphat.ReadOnly = !tbTienphat.ReadOnly;
        }
    }
}
